Recently, NAND flash memories have been used in various electronic devices. The NAND flash memory comprises, for example, a plurality of blocks. Each of the blocks comprises a plurality of pages. Each of the pages comprises a plurality of memory cells. In the NAND flash memory, data write and data read are executed in units of a page.
Within one block, data of a certain page can be copied to another page in the same block (hereinafter referred to as “page copy”). In the page copy operation, for example, data of a certain page address is read out, and the read-out data is transferred to the outside.
Then, another page address and write data which is to be written at this another page address (i.e. the data which has been read out from the certain page address) are input from the outside. This data is inverted in the NAND flash memory, and converted to write data. This converted data is written at this another page address.